import { PWD_REG, EMAIL_REG, PHONE_REG, NAME_REG } from './reg'

export const validatePwd = (rule: any, value: any, callback: any) => {
  if (!value) {
    return callback(new Error('请输入密码'))
  } else {
    if (PWD_REG.test(value)) {
      callback()
    } else {
      return callback(
        new Error('必须包含数字、英文大小写字母、特殊符号且大于等于8位（特殊符号包括: ~!@#$%^&*）'),
      )
    }
  }
}

export const validateEmail = (rule: any, value: any, callback: any) => {
  if (!value) {
    return callback(new Error('请输入邮箱'))
  } else {
    if (EMAIL_REG.test(value)) {
      callback()
    } else {
      return callback(
        new Error('请输入符合规则的邮箱'),
      )
    }
  }
}

export const validatePhone = (rule: any, value: any, callback: any) => {
  if (!value) {
    return callback(new Error('请输入手机号'))
  } else {
    if (PHONE_REG.test(value)) {
      callback()
    } else {
      return callback(
        new Error('请输入符合规则的手机号'),
      )
    }
  }
}

export const validateName = (rule: any, value: any, callback: any) => {
  if (!value) {
    return callback(new Error('请输入姓名'))
  } else {
    if (NAME_REG.test(value)) {
      callback()
    } else {
      return callback(
        new Error('6-16位的包含大小写字母、数字、特殊符号- _ 的用户名'),
      )
    }
  }
}
